Lave en cookie [måske lidt tricky her]

Tags:    php

Det er ved at være rigtig lang tid siden jeg har lavet noget i PHP, men idag har jeg så kastet mig over et nyt projekt, med de problemer der nu følger med....

Jeg skal ha skrevet en cookie, men jeg aner ikke hvordan fan jeg kan gøre det, når register_globals er slået fra...

Nogen der kan hjælpe? Jeg smider lige et eksempel som i kan rette i (hvis det altså er muligt)
---------------------
setcookie("test", "$adminuser", time()+ 3600); // 1 times cookie
---------------------



9 svar postet i denne tråd vises herunder
2 indlæg har modtaget i alt 4 karma
Sorter efter stemmer Sorter efter dato
Det er da meget korrekt?

Fold kodeboks ind/udKode 


Første gang skriver den:
"Dit brugernavn er: "
Opdater siden, og den skriver:
"Dit brugernavn er: Erik"



/AC



setcookie("test", "$adminuser", time()+ 3600); // 1 times cookie


koden ser fin nok ud. Det eneste der kunne være et problem er, hvis $adminuser ikke findes. Du nævner register globals: Brug det ikke. Det gør, at andre ikke ved, hvad dine variabler betyder, og så er det sværere at hjælpe dig. Det kunne være at $adminuser er fra en form på din side. Hvis det er en post form skal der stå $_POST["adminuser"]



Problemet er at jeg ikke kan få den til at skrive en cookie med min kode deroppe når register_globals er slået fra.

Herre øv



Problemet er at jeg ikke kan få den til at skrive en cookie med min kode deroppe når register_globals er slået fra.

Herre øv


Så se mit indlæg.



/AC



Den 11-05-04 14:34 skrev Jesper Kristensen følgende:
-----------------------------------------------------------------------------
setcookie("test", "$adminuser", time()+ 3600); // 1 times cookie


koden ser fin nok ud. Det eneste der kunne være et problem er, hvis $adminuser ikke findes. Du nævner register globals: Brug det ikke. Det gør, at andre ikke ved, hvad dine variabler betyder, og så er det sværere at hjælpe dig. Det kunne være at $adminuser er fra en form på din side. Hvis det er en post form skal der stå $_POST["adminuser"]
-----------------------------------------------------------------------------

$adminuser bliver hentet fra en anden php fil, hvor det er hardcoded ind i den - Så den variabel findes :) .
Så hvis register_globals er fra, skal jeg så ikke bruge andre metoder til at læse dem?

Eksempler :::
Skriv cookie: (korrekt?)
setcookie("test", $_POST["adminuser"], time()+ 3600); // 1 times cookie

læsning af cookie
if ($test){
echo "$test";
}

Eller hvad ?

[Redigeret d. 11/05-04 14:41:09 af Brian Nielsen]



nåå. For at læse en cookie, skal du hente den fra $_COOKIE variablen:

$_COOKIE["test"]

Hvis du skal hente get eller post data fra en form skal de hentes fra $_GET og $_POST

Hvis du skal hente eller skrive sessions skal du bruge $_SESSION

$_GET, $_POST og $_COOKIE hedder tilsammen $_REQUEST

andre variabler som php_self hentes fra $_SERVER



ok. Sidste spørgsmål !!

Den her
if (!$test){
echo "ingen cookie!!";
exit;
}


Hvordan fan skal jeg skrive det, når det står sådan her $_COOKIE["test"]



if (!$_COOKIE["test"]){
echo "ingen cookie!!";
exit;
}




super! mange tak for det - I må lige dele lidt



t